Input shortcuts for a communications device

ABSTRACT

A method of inputting an electronic address into an address field on a communications device, the electronic address including a plurality of text characters and non-text symbol characters. The method includes: receiving a plurality of inputs for the address field through a user input interface of the device; adding text characters to the address field corresponding to the inputs; and detecting among the inputs repetitive successive inputs of a predetermined delimiter, selecting a non-text symbol character from a set of non-text symbol characters in dependence on a number of times the delimiter has been repetitively input without any intervening inputs, and adding the selected non-text symbol character to the address field.

CROSS-REFERENCE TO RELATED APPLICATIONS

The instant application is a continuation of U.S. patent applicationSer. No. 11/695,203, filed Apr. 2, 2007, entitled “Input Shortcuts for aCommunications Device,” the contents of which are incorporated herein.

FIELD

Example embodiments described herein relate to communications devicesand, in particular, to keyboard shortcuts for such devices.

BACKGROUND

Communications devices, in particular handheld mobile communicationsdevices, typically have a keyboard or keypad for receiving input from auser. Such devices allow a user to be in contact through acommunications network, for example the Internet, through variousapplications such as e-mail and web browsing. For mobile communicationsdevices, the size of the device is typically small enough to be held inthe users hand and worn on the body of the user, such as with a beltclip. Such devices may have keyboards with reduced size keys whichprovide for input by the user's thumbs, while the rest of the device maybe physically carried by the hand and fingers. Since there is limitedphysical space on a mobile device, additional keys or features may notbe easily accommodated on the keyboard.

One difficulty with using a keyboard, and especially a reduced sizekeyboard on a handheld mobile communications device, is that it iscumbersome to input special symbol characters into the device. Forexample, in a conventional QWERTY keyboard, the inputting of theampersand or at-symbol (@) requires maintaining the pressing of a SHIFTkey while subsequently pressing the “2” key. Such an action may becumbersome for the user and may prove nearly impossible in somecircumstances, e.g., when only one hand is free. Additionally, such anaction is especially awkward when using a mobile device having reducedsize keys.

Accordingly, input entry shortcuts are desirable.

BRIEF DESCRIPTION OF THE DRAWINGS

Example embodiments will now be described by way of example withreference to the accompanying drawings, through which like referencenumerals are used to indicate similar features.

FIG. 1 shows a block diagram of an example of a mobile communicationsdevice to which example embodiments can be applied;

FIG. 2 illustrates a graphical representation of a front view of anexample of the device of FIG. 1;

FIG. 3 shows a further operational block diagram representation of themobile communications device of FIG. 1;

FIG. 4 shows an example of an options user interface screen shown on adisplay of the device of FIG. 1;

FIG. 5 shows an example of an e-mail composition user interface screenshown on a display of the device;

FIG. 6 shows the e-mail composition user interface screen of FIG. 5 witha completed e-mail address;

FIG. 7 shows an example of a web browser user interface screen shown ona display of the device;

FIG. 8 shows the web browser user interface screen of FIG. 7 with acompleted web address;

FIG. 9 shows a flow diagram of a method performed by a controller of themobile communications device of FIG. 1; and

FIG. 10 shows an example of a data set used by a controller of themobile communications device of FIG. 1.

DETAILED DESCRIPTION

According to an example embodiment there is provided a method ofinputting an electronic address into an address field on acommunications device, the electronic address including a plurality oftext characters and non-text symbol characters. The method includes:receiving a plurality of inputs for the address field through a userinput interface of the device; adding text characters to the addressfield corresponding to the inputs; and detecting among the inputsrepetitive successive inputs of a predetermined delimiter, selecting anon-text symbol character from a set of non-text symbol characters independence on a number of times the delimiter has been repetitivelyinput without any intervening inputs, and adding the selected non-textsymbol character to the address field.

According to another example embodiment, there is provided a hand-heldwireless communications device that comprises a controller forcontrolling the operation of the device; a user input interface forinputting character information to the controller; a display coupled tothe controller; and an electronic storage element coupled to thecontroller and having stored thereon a symbol character set comprising asequence of non-text symbol characters. The controller inputs an addressinto an address field displayed on the display of the device by: (i)receiving a plurality of inputs for the address field through the userinput interface; (ii) adding text characters to the address fieldcorresponding to the inputs; and (iii) detecting repetitive successiveinputs of a predetermined delimiter, selecting a non-text symbolcharacter from the symbol character set in dependence on a number oftimes the delimiter has been repetitively input without any interveninginputs, and adding the selected non-text symbol character to the addressfield.

The following description of one or more specific embodiments does notlimit the implementation of the invention to any particular computerprogramming language, operating system, system architecture or devicearchitecture. Moreover, although some embodiments may include mobiledevices, not all embodiments are limited to mobile devices; rather,various embodiments may be implemented within a variety ofcommunications devices or terminals, including handheld devices, mobiletelephones, personal digital assistants (PDAs), personal computers,audio-visual terminals, televisions, and other devices.

For clarity, reference to “symbol characters” refers to non-alphanumericcharacters, and reference to “text characters” refers to all characters,including both symbol characters and alphanumeric characters.

Referring now to the drawings, FIG. 1 is a block diagram showing anexample of an electronic communications device 10 to which exampleembodiments described herein can be applied. The communications device10 is a two-way mobile communication device having electronic messagingcommunications capabilities and possibly also voice communicationscapabilities. Depending on the functionality provided by thecommunications device 10, in various embodiments the communicationsdevice 10 may be a data communication device, a multiple-modecommunications device configured for both data and voice communication,a mobile telephone, a PDA enabled for wireless communication, a computersystem with a wireless modem or wireless network card, or a computer orphone device with a fixed connection to a network, among other things.The communications device 10 is in at least one example embodiment ahandheld device having a casing or housing that is dimensioned to fitinto a purse, pocket or belt-mounted device holster.

In the example embodiment shown in FIG. 1, the communications device 10includes a communications subsystem 11 acting as the interface betweenthe communications device 10 and the wireless communications network 50.Although not specifically shown in the Figures, the communicationssubsystem 11 may include one or more receivers, transmitters, andassociated components such as one or more antenna elements, and aprocessing module such as a digital signal processor (DSP). As will beapparent to those skilled in the field of communications, the particulardesign of the communications subsystem 11 will be dependent upon thecommunication network(s) in which the communications device 10 isintended to operate.

The communications device 10 includes a controller that includes atleast one microprocessor 38 for controlling the overall operation of thedevice. The microprocessor 38 interacts with the communicationssubsystem 11 and also interacts with further device subsystems such as adisplay 22, flash memory 24, random access memory (RAM) 26, one or moreauxiliary input/output (I/O) subsystems or devices 28 (e.g. ascrollwheel 28 a or trackball), serial port 30, keyboard or keypad 32,speaker 34, microphone 36, a short-range communications subsystem 40,and any other device subsystems generally designated as 42.

Operating system software 54 and various software applications 58 usedby the microprocessor 38 are, in one example embodiment, stored in apersistent store such as flash memory 24 or similar storage element.Those skilled in the art will appreciate that the operating system 54,software applications 58, or parts thereof, may be temporarily loadedinto a volatile store such as RAM 26. It is contemplated that receivedcommunication signals may also be stored to RAM 26.

The microprocessor 38, in addition to its operating system functions, inexample embodiments enables execution of software applications 58 on thedevice. A predetermined set of software applications 58 which controlbasic device operations, including data and voice communicationapplications for example, will normally be installed on thecommunications device 10 during manufacture. Further softwareapplications 58 may also be loaded onto the communications device 10through the wireless communication network 50, an auxiliary I/Osubsystem 28, serial port 30, short-range communications subsystem 40 orany other suitable subsystem 42, and installed by a user in the RAM 26or a non-volatile store for execution by the microprocessor 38. Suchflexibility in application installation increases the functionality ofthe device and may provide enhanced on-device functions,communication-related functions, or both. For example, securecommunication applications may enable electronic commerce functions andother such financial transactions to be performed using thecommunications device 10.

In a data communication mode, a received signal such as a text messageor web page download will be processed by the communications subsystem11 and input to the microprocessor 38, which further processes thereceived signal for output to the display 22, or alternatively to anauxiliary I/O device 28. A user of communications device 10 may alsocompose data items within the software applications 58, such as emailmessages, using the keyboard 32 in conjunction with the display 22 andpossibly an auxiliary I/O device 28 (e.g. the scrollwheel 28 a). Suchcomposed items may then be transmitted and received over a communicationnetwork through the communications subsystem 11.

The serial port 30 (which may be for example a universal serial bus(USB) port) shown in FIG. 1 may enable a user to set preferences throughan external device or software application and would extend thecapabilities of the device by providing for information or softwaredownloads to the communications device 10 other than through a wirelesscommunication network.

The short-range communications subsystem 40 is a further component whichmay provide for communication between the communications device 10 anddifferent systems or devices, which need not necessarily be similardevices. For example, the short-range communications subsystem 40 mayinclude an infrared device and associated circuits and components or aBluetooth™ communication module to provide for communication withsimilarly enabled systems and devices.

Wireless communications network 50 is, in an example embodiment, awireless wide area packet data network, which provides radio coverage tomobile communications devices 10. Wireless communications network 50 mayalso be a voice and data network such as Global System for MobileCommunication (GSM) and General Packet Radio System (GPRS), CodeDivision Multiple Access (CDMA), or various other third generationnetworks such as Enhanced Data rates for GSM Evolution (EDGE) orUniversal Mobile Telecommunications Systems (UMTS). In some exampleembodiments, wireless communications network 50 is a wireless local areanetwork (WLAN), such as for example a network compliant with one or moreof the IEEE 802.11 family of standards. In some example embodiments, thecommunications device 10 is configured to communicate in both data andvoice modes over both wireless WAN and WLAN networks and to roam betweensuch networks.

FIG. 2 shows, in diagrammatic form, a front view of an example handheldembodiment of the communications device 10 of FIG. 1. The communicationsdevice 10 includes display screen 22, alphanumeric keyboard or keypad 32and rotatable input device such as a trackball or scrollwheel 28 a. Insome example embodiments, the keyboard 32 includes a QWERTY layout andincludes space bar 33. In some example embodiments, each key in thekeyboard 32 contains one or more letters aligned in a QWERTY layout. Insome embodiments the keys in keyboard 32 may not be actual physical keysbut may be virtual keys displayed on a touch screen display. In someexample embodiments, the keyboard 32 includes a QWERTZ layout, an AZERTYlayout, a Dvorak layout, or the like. In some example embodiments, thekeyboard 32 layout has reduced keys, such as a reduced QWERTY layout.

FIG. 3 shows a further operational block diagram representation of themobile communications device 10 of FIG. 1. Also stored in a persistentstorage of the communications device 10 (such as flash memory 24) isaddress book information 110 and symbol character sequence information112. Such information may also be at least partially stored at leastsome of the time in memory of a Subscriber Identity Module (SIM) card(not shown) used with the communications device 10, in volatile devicememory (such as RAM 26), and/or at a location accessible to thecommunications device 10 over wireless communications network 50. Aswill be described in greater detail below, symbol character sequenceinformation 112 can be used in embodiments of the invention forfacilitating input of special characters in address fields.

Under instructions from various software applications 58 shown in FIG. 1and resident on the communications device 10, the processor 38 isconfigured to implement various functional components or modules 100,some of which are represented in FIG. 3, for interacting with the devicesubsystems described above. In an example embodiment, the softwareresident on the communications device 10 includes applications forimplementing an address book module 102, a web browser module 104, atelephone module 106, and an electronic messaging module 108. In someembodiments, some or part of the functionality of the functional modules100 can be implemented through firmware or hardware components insteadof, or in combination with, computer software instructions executed bythe microprocessor 38 (or other processors).

The electronic messaging module 108 enables the communications device 10to send and receive messages, such as email messages, over one or morewireless communications networks 50. Examples of electronic messaginginclude email, personal identification number (PIN) messaging and/orshort message service (SMS) messaging.

The address book module 102 enables address book information 110, suchas telephone numbers, PIN numbers, email and/or instant text messagingaddresses, to be stored and accessed on the communications device 10.The browser module 104 permits a user to access a specified web address,for example via data transfer over one or more wireless networks 50. Thetelephone module 106 enables the communications device 10 to transmitand receive voice and data over one or more wireless networks 50.

Referring to FIG. 2 again, there is shown an example of handheldcommunications device 10 on which a plurality of user selectable iconsare shown on a display screen 22. The icons are each associated withfunctions that can be performed by the communications device 10. Forexample, FIG. 2 shows a “Messages” icon 60 for accessing electronicmessaging functions of the communications device 10 (associated withelectronic messaging module 108), a “Phone” icon 62 for accessing phonefunctionality (associated with telephone module 106), an “Address Book”icon 64 for accessing address book functions (associated with addressbook module 102), a browser icon 66 a for accessing web browsingfunctions (associated with browser module 104), and an options icon 68(associated with an options module, which may be a separate module orexecuted by one or more existing modules 100). As shown, the browsericon 66 a is highlighted or focused by a caret or selection symbol 70which can be navigated by a device user among the displayed iconsthrough rotation of the scrollwheel 28 a (or other navigational inputdevice). The scrollwheel 28 a is also depressible, such that depressionof the scrollwheel 28 a when an icon is highlighted or focused byselection symbol 70 results in launching of the underlying function.

Generally, according to example embodiments, the communications device10 is configured to facilitate the inputting of non-text symbolcharacters into an address field (see for example address field 202 inFIGS. 5 and 6 and address field 221 in FIGS. 7 and 8). Due to reducedsize of the user input interface of a mobile communications device 10,such devices often do not have keys for special non-text symbolcharacters. If a user wishes to input an e-mail address for an e-mailapplication, there may be a number of symbol characters that may berequired to be input. For example, typical e-mail address formats may be<name>@<domain>.com or <firstname>.<lastname>@<domain>.com. Furthermore,for example in web browser applications, a user may wish to input adesired web address or Uniform Resource Locator (URL) (for example,www.ABCcompany.com/world-wide/products.html). In such exampleapplications, there may be a variety of different non-text symbolcharacters that may be required to be input into the appropriateaddress. A user may for example be required to input at symbols (@),period symbols (.), forward-slash symbols (/), hyphen symbols (-),underscore symbols (_), back-slash symbols (\), etc.

In addition, the first non-text symbol character that appears in an typeof address may not always be the same. For example, with reference tothe example e-mail addresses mentioned above, the first symbol charactermay be an at-symbol (@) in some instances, or a period symbol (.) inother instances, depending on the given address or the type of addressformat allocated by a domain owner (such as a company or serviceprovider, etc.).

In example embodiments, the symbol characters may be selected from a setof symbol characters, wherein the set of symbol characters is in aspecified sequence, as specified in symbol character sequenceinformation 112. A user may enter text characters into the addressfield. The user may then wish to enter a symbol character. Upon input ofa predetermined delimiter, for example a blank space (by user activationof the space bar key 33), a first symbol character is selected from theset of symbol characters. In example embodiments described herein, theblank space input is used as the delimiter as blank spaces are generallynot valid characters in an electronic address field, however otherpredetermined delimiter input could be used. If a second blank space isinputted without a different key being depressed, this causes a secondsymbol character from the set of symbol characters to be selected. Eachsubsequent blank space causes a subsequent symbol character from the setof symbol characters to be selected, replacing any previous symbolcharacters. When a desired symbol character is selected, it may beappended to the text in the address field, and displayed on displayscreen 22.

To accomplish such embodiments, the symbol character sequenceinformation 112 in flash memory 24 may be configured to contain a datastructure as best illustrated in FIGS. 4 and 10. FIG. 4 illustratesrepresentative symbol character sequence information 112 as displayed onan example options user interface screen 250 shown on the display 22 ofthe communications device 10. FIG. 10 represents the same information asstored in memory such as flash memory 24. Turning again to FIG. 4, thesymbol character sequence information 112 may be configured to includemultiple sets of symbol character sequences, where different sets areused depending on the type of electronic address that is being entered.Each symbol character set includes a predetermined sequence of symbolcharacters. Each set of symbol character sequences can in turn includesub-sets or groups of sequences. By way of example, in FIGS. 4 and 10the symbol character sequence information 112 includes two symbolcharacter sets, namely e-mail address set 252 for use when inputting anemail address, and URL address set 254 for use when inputting a UniformResource Locator (URL) or World Wide Web (WEB) address. The e-mailaddress set 252 in turn includes two sub-sets or groups of symbolcharacter sequences, namely an initial sequence group 256 (comprisingthe symbol sequence “@”, “.”, “_” and “-”) and a subsequent sequencegroup 260 (comprising the symbol character sequence “.” and “-”). TheURL address set 254 also includes two sub-sets or groups of symbolcharacter sequences, namely an initial sequence group 266 (comprisingthe symbol character sequence “.”, “/”, and “-”) and subsequent sequencegroup 270 (comprising the symbol character sequence “/”, “-”, “.” and“\”).

Each of the symbol character sets 252, 254 can also have an associatedtrigger symbol character 264, 274. Trigger symbol characters 264, 274permit the communications device 10 to recognize when a different groupof symbol characters should be selected for inputting. For example, asshown in the illustrated embodiment, the trigger symbol character 264for the email address set 252 is an “@” symbol, and the trigger symbolcharacter 274 for the URL address set is a forward slash symbol (/).

Accordingly, in some example embodiments as illustrated in FIG. 4, theoptions user interface 250 allows a user to configure an e-mail addresssymbol character set 252 and a URL address symbol character set 254. Insome example embodiments, the symbol character sets will bepre-configured with default symbols and may be subsequently changedthrough remotes access to the communications device 10 by a systemadministrator, for example. In other example embodiments, more or fewersymbol character sets could be provided, and the symbol character setsmay each include more or less than two groups of sequences (and moretrigger symbol characters in the case of more than two groups ofsequences). Each set of symbol characters in each of the sequence groups256, 260, 266, 270 is in a specified sequence, representing an order ofselection preference of symbol characters with respect to specificexample embodiments, as will be explained in greater detail below.

By way of example only, with respect to the e-mail set 252, andreferring to the initial group 256, the specified symbol charactersequence in that instance is shown as an at symbol (@), a period symbol(.), an underscore symbol (_), and a hyphen symbol (-). Referring to thesubsequent group 260 of symbol characters 260, the specified sequence inthat instance is shown as a period symbol (.) and a hyphen symbol (-).With respect to the URL address set 254, referring to the initial group266 of symbol characters, the specified sequence in that instance isshown as an a period symbol (.), a forward-slash symbol (/), and ahyphen symbol (-). Referring to the subsequent group 270 of symbolcharacters, the specified sequence in that instance is shown as aforward-slash symbol (/), a hyphen symbol (-), a period symbol (.), anda back-slash symbol (\). Other sets of symbol characters can bespecified and the particular sequences set out above are merelyillustrative. In some embodiments, all or part of the symbol charactersequence information 112 may be hard coded in one or more softwareapplications, rather than for example a user configurable data setstored in memory.

Example embodiments are illustrated in the e-mail user interface 200 ofFIGS. 5 and 6. The user interface 200 may be used to compose a message,for example an e-mail message. As shown in FIGS. 5 and 6, in someexample embodiments, the e-mail user interface 200 may have a header 201in the interface, that includes a “To” field, a “CC” field, and a“Subject” field. In some example embodiments, as shown, the “To” fieldin the user interface 200 may have an e-mail address field 202 forinputting of a recipient e-mail address. In some example embodiments, asshown, the e-mail address field 202 may be populated with a plurality oftext characters 204 a-204 d and a plurality of symbol characters 206a-206 c. By way of example only, as shown, the desired e-mail address tobe input into the e-mail address field is “dave.smith@work.com”.

In operation, again referring to FIG. 5, a user may wish to input ane-mail address into the e-mail address field 152, for example“dave.smith@work.com”. The user begins by entering the text characters“dave” 204 a into the address field 202. A user may then wish to appendthe text characters 204 a with a symbol character. If the user enters apredetermined delimiter, such as a blank space (a “first blank space”),for example by pressing space bar 33, the communications device 10selects the first symbol character in the initial group of symbolcharacters 256 and displays that character in the address field 202.Referring to FIG. 4, the first symbol character in the initial group ofsymbol characters 256 is the “@” symbol. Thus, by inputting a firstblank space into the address field, the “@” symbol is selected from theinitial group of symbol characters 256, as represented by the symbolcharacter at “@” at location 206 a in FIG. 5. If the user once againinputs the predetermined delimiter, for example another blank space(i.e. a second blank space) before entering another text character, asecond symbol character is selected from the initial group of symbolcharacters 256 in place of the first symbol character. Referring againto FIG. 4, the second symbol character from the initial group of symbolcharacters 256 is a period symbol (.). Thus, by pressing the space bar33 a second time without any intervening character input after pressingthe space key the first time, the period symbol (.) is selected from theinitial group of symbol characters 256, and inserted into the text ofaddress field 202 instead of the “@” symbol, as represented by theperiod “.” symbol at location 206 a in FIG. 6. If a blank space isentered for a third or fourth time (before entering any other textcharacters), subsequent symbol characters will be selected from theinitial group of symbol characters 256. If a blank space is entered fora fifth time, in some example embodiments, the first symbol, i.e., the“@” symbol, is once again selected from the initial group of symbolcharacters 256. Accordingly, in some example embodiments, a user mayrepeatedly press the space key to cycle through the set of symbolcharacters. When the user gets to the last symbol in the sequence 256,the sequence then starts again with the first symbol.

Continuing with the example shown in FIG. 6, a user may enter the textcharacters “smith” 204 b. A user may then input a blank space, forexample by pressing the space bar 33 once only, which will select the“@” symbol for location 206 b. The blank space is only input once in theillustrated example, so the first symbol character “@” in the initialgroup of characters 256 is selected and displayed on the communicationsdevice 10. The user may then enter the text characters “work” 204 c.

As indicated in FIG. 4, the trigger symbol 264 may be an “@” symbol. Ifthe e-mail address field 202 contains a trigger symbol, this means thatthe set of symbol characters will be selected from a second set ofsymbol characters, rather than an initial group of symbol characters.Thus, referring again to FIG. 6, if a user enters a blank space atsymbol character location 206 c, the communications device 10 checkswhether the address field 202 contains the trigger symbol (an at symbol(@)). It will be appreciated that in different embodiments, thecommunications device 10 could use different methods to determine if thetrigger symbol 264 was already present in the address field 202. Forexample, the entire address field 202 can be scanned with each input todetermine if the trigger symbol is present; a flag could be set when thetrigger symbol 264 is added to the address field 202; or a state machinecould be used to track if the trigger symbol 264 has been added. In theillustrated embodiment, since the trigger symbol 264, namely the atsymbol (@), is present (at 206 b), the communications device 10 selectsthe first symbol character from the subsequent group of symbolcharacters 260, rather than the initial group of symbol characters 256.As shown in FIG. 4, the first symbol character in the subsequent groupof symbol characters 260 is a period symbol (.). Thus, by inserting ablank space once, for example by pressing the space bar 33 once only, aperiod (.) is selected and subsequently inserted (see location 206 c)after the text characters 204 c into the address field 202. Continuingwith the example shown in FIG. 6, a user may enter the text characters“com” 204 d. The user has now completed the entering of the desirede-mail address text into the address field 202.

In some example embodiments, as illustrated in FIG. 5, the selectedsymbol character is actively displayed immediately upon user activationof the space key on the screen 22. Thus, when a blank space is inputonce, an “@” symbol is displayed on the screen at location 206 a (e.g.,FIG. 5). When a blank space is repeatedly input for a second time, aperiod symbol (.) replaces the “@” symbol displayed on the screen atlocation 206 a (e.g., FIG. 6). The presently selected symbol characterwill be appended to the address field when the user inputs a differenttext character or presses some other input (e.g., by depressingscrollwheel 28 a). In other example embodiments, the presently selectedsymbol character is not displayed on the screen 22, and only the finaldesired symbol is appended to the address field, depending on the numberof times the blank space is inputted.

In some example embodiments, the presently selected symbol characterflashes on the screen 22 (or some other visual indicator is used) toindicate that another inputting of a blank space will select asubsequent symbol character in a set of symbol characters. Thesubsequent symbol character replaces any preceding symbol characters. Ifthe presently selected symbol character is the desired symbol character,the user may input a different text character or press some other input(e.g., by depressing scrollwheel 28 a). Once the desired symbolcharacter is selected, the symbol character will stop flashing and beappended to the address field.

It can be appreciated that the example embodiments of FIGS. 5 and 6 maybe incorporated in a variety of applications which include e-mailaddress fields. For example, in an address book application performed byaddress book module 102, a user may wish to input an e-mail address intoan e-mail address field, to be saved for future correspondence with aspecified individual. In such an instance, when a user is inserting textcharacters into the e-mail address field, the user may press the spacebar 33, for a particular number of times, in order to select a desiredsymbol character.

Reference is now made to FIGS. 7 and 8, which show an example of a webbrowser user interface 220 shown on the display 22. The user interface220 may be used to input a desired web address, for accessing a webpageover the wireless networks 50, which may include the Internet. In someexample embodiments, as shown, the user interface 200 may have a webaddress field 221 for inputting of a desired Uniform Resource Locator(URL), and a browser window 228 for displaying of an associated webpage. In some example embodiments, as shown, the web address field 221may be populated with a plurality of text characters in text fields 222and a plurality of symbol characters 224. By way of example only, asshown, the desired web address to be input into the web address field is“www.rim.com/new-products/index.html”. Also shown is in the web addressfield 221 is a cursor 230.

In some example embodiments, the preceding text “Go To: http://” isautomatically generated. The preceding text may or may not form part ofthe web address field 221, depending on the application or configurationof the communications device 10.

In operation, again referring to FIG. 7, a user may wish to input a webaddress into the web address field 221, for example“www.rim.com/new-products/index.html”. The user begins by entering thetext characters “www” 222 a into the address field 221. A user may thenwish to append the text characters 222 a with a symbol character.Referring to FIG. 4, the first symbol character in the initial group ofsymbol characters 266 is a period symbol (.). Thus, by inputting a firstblank space into the address field 221, the period symbol (.) isselected from the initial group of symbol characters 266, and insertedinto the text of web address field 221, as shown by symbol character 224a in FIG. 7.

Continuing with the example, with reference to FIG. 7, a user may enterthe text characters “rim” 222 b. A user may then input a blank space,for example by pressing the space bar 33 once only, which will againenter the period symbol (.) 224 into the web address field 221. Sincethe blank space is only entered once, the first symbol character, namelythe period symbol (.), in the initial group of characters 266 isselected and displayed on the communications device 10. A user may enterthe text characters “com” 222 c.

Continuing with the example, a user may then enter a single blank space,whereby the communications device 10 selects the first symbol character,namely the period symbol (.), from the initial group of symbolcharacters 266. If the user inputs a second blank space without anyintervening key selections, a second symbol character is selected fromthe initial group of symbol characters 256, namely the forward-slashsymbol (/). Thus, by inputting a second blank space into the addressfield, the forward-slash symbol (/) is selected from the initial groupof symbol characters 266, and inserted into the text of web addressfield 221 at location 224 c (FIG. 8). If a blank space is entered for athird or fourth time (before entering any other text characters), thesubsequent respective symbol characters will be selected from theinitial group of symbol characters 266. If a blank space is entered fora fifth time, in some example embodiments, the first symbol, i.e., theperiod symbol (.), is once again selected from the initial group ofsymbol characters 266.

Continuing with the example, with reference to FIG. 8, a user may enterthe text characters “new” 222 d. As indicated in FIG. 4, the triggersymbol 274 may be a forward-slash symbol (/). If the web address field221 contains a trigger symbol, this means that the set of symbolcharacters will be selected from a second set of symbol characters 270,rather than an initial group of symbol characters 266. Note that thepreceding text “Go To: http://” would not be considered as part of theaddress field when determining the presence of the trigger symbol. Thus,referring again to FIG. 8, if a user enters a blank space at location224 d, the communications device 10 checks whether the web address field221 contains the trigger symbol (a forward-slash symbol (/)). Since thetrigger symbol, namely the forward-slash symbol (/), is present (atlocation 224 c), the communications device 10 selects the first symbolcharacter from the subsequent group of symbol characters 270, ratherthan the initial group of symbol characters 266. As shown in FIG. 4, thefirst symbol character in the subsequent group of symbol characters 260is a forward slash symbol (/). If a second blank space is inputted, thecommunications device 10 selects the second symbol character from thesubsequent group of symbol characters 270, namely the hyphen symbol (-).Thus, by inserting a second blank space, a hyphen symbol (-) is selectedand subsequently inserted after the text characters 222 d into theaddress field 221.

Continuing with the example, with reference to FIG. 8, a user may enterthe remaining text “products/index.html” in the same manner as describedabove. In some example embodiments, a web page may then be associatedwith the address, for example by directing the web page to an internetprotocol (IP) address, for downloading of the associated web page, forexample from wireless networks 50. The downloaded web page may then bedisplayed in browser window 228.

It can be appreciated that the example embodiments of FIGS. 7 and 8 maybe incorporated in a variety of applications which include web addressfields. For example, there may be a bookmark application associated withthe web browser module 104. A bookmark is typically saved as an entireweb address in a given application, and by selecting the bookmark, auser is not required to type in the entire web address for accessing ofa desired web page. A user may initially be required to type in a webaddress into the bookmark application. In such an instance, a user wouldfor example be inputting text characters into a web address field, andpressing the space bar 33, for a particular number of times, in order toselect a desired symbol character.

FIG. 9 shows a flow diagram illustrating an example method performed bythe microprocessor 38 of the communications device 10 to implement thefunctionality described above in respect of FIGS. 5-8. In exampleembodiments, the microprocessor 38 may perform such method under controlof computer instructions that can be associated with one or more of theoperating system 54 and the software applications 58 used to implementmodules 100, including for example the software associated with browsermodule 104 and messaging module 108. The exact order of steps may varyfrom those shown in FIG. 9 in different applications and embodiments. Itcan also be appreciated that some steps may not be required in someembodiments.

Referring now to the method of FIG. 9 and the example symbol charactersequence information 112 as shown in FIG. 10, the communications device10 may be configured to perform the example method as illustrated. Themethod of FIG. 9 commences when an input location marker such as acursor is located within an electronic address entry field 202, 221displayed on the device display 22 for which the communications device10 is configured to implement the method of FIG. 9. As indicated above,examples of electronic address entry fields can include, but are notlimited to, e-mail address and World Wide Web or URL addresses. In someexample embodiments, the method begins with step 900, in which asuitable symbol set (for example, email address set 252 or URL addressset 254) to use for the remainder of the method is automaticallyselected based on the type of address field in which the input isoccurring. In some embodiments, set selection may not be required as theonly one set may be available to the specific application that is usedto implement address entry.

As indicated at step 902, a user input through the keyboard 32 or otherinput device is then received. As indicated in steps 904, 906, and 908,respectively, the communications device 10 is configured to detect if apredetermined delimiter is inputted by the user (step 904), if apredetermined enter key is inputted (step 906), or if a normal characteris entered (step 908). Typically, the first few user inputs in anaddress field 202 or 221 will be text characters, with each input textcharacter being added to the address field 202 or 221 (both in memoryand in the on-screen display) as they are input, as indicated at step910. After each input character is added to the address field 202 or221, the method returns to step 902 to receive the next user input.

In the event that the user inputs a predetermined delimiter at step 902(for example, presses or selects the space key to input a spacecharacter) then a delimiter processing method 905 is performed. Asindicated by steps 914, 916 and 918, in example embodiments where thecurrent symbol set 252 (or 254, as the case may be), includes multiplegroups, a determination whether the predetermined trigger symbol (forexample the “@” symbol for a email address, the “/” symbol for a URLaddress) has already been input into the address field. If not, asindicated at step 916 the communications device 10 will select theinitial or first symbol group (for example, initial group 256 in thecase of an email address, and initial group 266 in the case of a URLaddress) as the symbol group to use when selecting a symbol for entryinto the address field. As indicated at step 918, if the predeterminedtrigger symbol has already been input into the address field, thecommunications device 10 will select the subsequent or second symbolgroup (for example, subsequent group 260 in the case of an emailaddress, and subsequent group 270 in the case of a URL address) to usewhen selecting a symbol.

As indicated at step 920, the device then determines if the delimiterinput is a repeat input by determining if the most recent previous userinput was a delimiter. If the most recent user input was not a delimiterinput, then a counter (D-Count) is set to indicate that it is the firstentry of a delimiter at the current location in the address field, andthe first symbol character from the selected symbol character group isadded to the address field (both in memory and on the display screen) atthe current input location in the field (step 924), and the device thenloops back to step 902 to wait for the next user input.

In the event that at step 920 a determination is made that the delimiterinput is in fact a repeat input (for example, when the space key hasbeen repeatedly pressed without any intervening user keyboard inputs),then the counter (D-Count) is incremented (step 928). As indicated atsteps 926 and 930, in the event that the counter D-Count is at a maximumvalue that corresponds to the total number of symbol characters in thecurrently selected symbol character sequence group, then the counter isre-set to allow for cycling through the symbol group. As indicated instep 932, when a delimiter input is a repeat input (without anyintervening inputs) the symbol character that was previously placed inthe address field at step 924 during the previous iteration throughprocess 905 is replaced in memory and on the display screen with thesymbol from the symbol group that corresponds to the value of thecounter D_Count. For example, in the case of initial symbol charactergroup 256, D_Count=1 corresponds to the symbol “@”; D_Count=2corresponds to “.”; D_Count=3 corresponds to “_” and D_Count=4corresponds to “-”, and Max=4.

Turning to step 906, user input such as pressing an enter key or otherselection input (for example depressing a scroll wheel or trackball) cansignal that address entry is complete (step 934) in some embodiments.Turning again to step 908, in the event that the user input is not adelimiter, an enter key, or an appropriate character, the input will besuitably processed as indicated at step 912.

As will be apparent from the above description, in at least one exampleembodiment, when the user hits space bar for the first time in an emailaddress, an “@” will be inserted. If the user hits the spacebar a secondtime without hitting any other key, the “@” would be replaced by a “.”.If the user hit the spacebar a third time without hitting any other key,the “.” would be replaced by a “_”. Hitting the spacebar 33 a fourthtime without hitting any other key would result in the “_” beingreplaced by a “-”. After the user types another character after the “@”in an email address and then presses space, a “.” would be inserted.Pressing the spacebar 33 a second time without hitting any other keywould result in the “.” being replaced with a “-”. Subsequent presses ofthe spacebar 33 without hitting another key would toggle between “-” and“.” since they are the only valid special symbol characters in a domainname.

When the user hits the space bar for the first time in a URL, a “.” willbe inserted. If the user hits the spacebar a second time after typing“.” without hitting any other key, the “.” would be replaced by a “/”.If the user hits the spacebar a second time without hitting any otherkey, the “/” would be replaced by a “-”. After the first alphanumericcharacter after a “/” (trigger symbol) in a URL, pressing the spacewould generate a “/” character (from sequence 270), and so on.

It will be appreciated that the symbol input shortcut functionalitydescribed above could be implemented in a number of ways, and the flowchart shown in FIG. 9 is merely illustrative of one possibleimplementation.

Reference is again made to FIGS. 4 and 10, which illustrate exampleembodiments of possible options and configurations of the set(s) ofsymbol characters. The choice of the set(s) of symbol characters maydepend on the conventional uses of the various address, which may varyover time. The choice of the set(s) of symbol characters may for examplebe based on frequency studies of use by a sample group, industrystandards, conventions, and statistical usage. In some exampleembodiments, the choice of the set(s) of symbol characters may beconfigured by the manufacturer or system administrator of a company, andin other embodiments by a user's preference, for example by selectingconfiguration icons 258, 262, 268, 272 (shown in FIG. 4). In someexample embodiments, the configuration of the set(s) of symbolcharacters may be password protected. The choice of the trigger symbolcharacters 264 or 274 may also be configured by selecting drop-downmenus. The trigger symbol character may also vary based on frequencystudies of use by a sample group, industry standards, conventions, andstatistical usage.

The choice of symbol characters will now be explained, by way of exampleonly, with respect to the e-mail address menu 252. In some exampleembodiments, the initial group of symbol characters 256 is, in order,the at symbol (@), the period symbol (.), the underscore symbol (_), andthe hyphen symbol (-). However, as mentioned, the choice of symbolcharacters and the order may vary over time, depending on the particularapplication. In some example embodiments, the at symbol (@) is typicallythe first symbol character in an e-mail address. However, as illustratedabove, some e-mail addresses do have the period symbol (.) as the firstsymbol character.

The at symbol (@) is also chosen as the trigger symbol character,because the types of symbol characters typically used after the atsymbol (@) vary with respect to those before the at symbol. For example,in some applications, it is considered an invalid address to have two atsymbols (@) in the same e-mail address, and thus a subsequent at symbol(@) would never be used in such applications.

Again referring to the e-mail address character sequence set 252 of FIG.4, in some example embodiments, the subsequent group of symbolcharacters 260 is, in order, the period symbol (.) and the hyphen symbol(-). Thus, when a user inserts a blank space in an address field, thesymbol character will toggle between the period symbol (.) and thehyphen symbol (-). These symbol characters were chosen because, in someapplications, they are the only valid symbol characters in a domain name(i.e., after the at symbol (@)).

Referring now to the URL address character sequence set 254 of FIG. 4,in some example embodiments, the initial group of symbol characters 266is, in order, the period symbol (.), the forward-slash symbol (/) andthe hyphen symbol (-). However, as mentioned, the choice of symbolcharacters and the order may vary over time, depending on the particularapplication. In some example embodiments, the period symbol (.) istypically but not always the first symbol character in a web address,i.e., www.[companyname].com.

The forward slash symbol (/) is chosen as the trigger symbol character,because the types of symbol characters typically used after the forwardslash symbol (/) vary with respect to those before the at symbol.

Again referring to the URL address menu 254, in some exampleembodiments, the subsequent group of symbol characters 270 is, in order,the forward-slash symbol (/), the hyphen symbol (-), the period symbol(.), and the backslash symbol (\). The choice of symbol characters mayvary, as explained above.

It can be appreciated that each set of symbol characters may containmore or less than the 2, 3 or 4 symbol characters shown in the exampleembodiments. It can also be appreciated that multiple trigger symbolsmay be used, with possibly more than 2 sets of symbol characters for anygiven type of address. In addition, the choice of symbols is not limitedto those mentioned in the above example embodiments, which are meant tobe illustrative only.

In the embodiments described above, a trigger symbol 264, 274 permitsthe communications device 10 to recognize when a different group ofsymbol characters (e.g. group 256 or group 260 in the case of an emailaddress; group 266 or group 270 in the case of a URL) should be used forinputting a special symbol in response to a space character input. In atleast some example embodiments, trigger character strings are used inplace of a trigger character to determine which group of symbols shouldbe used. By way of example, in the context of a URL address, triggerstrings could include common top level domain names such that thecommunications device 10 is configured to determine at step 914 (orthrough state machine) if one or more of the trigger strings “.com”,“.net”, “.org”, “.gov”, “.biz”, “.ca”, “.uk” or other top-level domain(TLD) is present in the address field. The first group of special symbolcharacters 266 (step 916) can be used for special symbol input if thetrigger string is not present in the address field, and the second groupof special symbol characters 270 (step 918) used for special inputsymbol input if the trigger string is present in the address field.

While the invention has been described in detail in the foregoingspecification, it will be understood by those skilled in the art thatvariations may be made without departing from the scope of theinvention, being limited only by the appended claims.

What is claimed is:
 1. A method of inputting an electronic address intoan address field on a communications device, the electronic addressincluding a plurality of text characters and non-text symbol characters,comprising: receiving a plurality of inputs for the address fieldthrough a user input interface of the device; adding text characters tothe address field corresponding to received inputs that are textcharacter inputs; and detecting among the inputs repetitive successiveinputs of a predetermined delimiter, selecting a non-text symbolcharacter from a set of non-text symbol characters in dependence on anumber of times the delimiter has been repetitively input without anyintervening inputs, and adding the selected non-text symbol character tothe address field when an input other than the delimiter is received. 2.The method of claim 1 wherein the delimiter is a space character input.3. The method of claim 1 wherein the selected non-text symbol characteris selected both in dependence on the number of times the delimiter hasbeen repetitively input without any intervening inputs and whether apredetermined symbol character is already present in the address field.4. The method of claim 3 wherein the set of non-text symbol charactersincludes a first sequence of symbol characters and a second sequence ofsymbol characters, wherein the selected symbol character is selectedfrom the first sequence if the predetermined symbol character is notalready present in the address field, and the selected symbol characteris selected from the second sequence if the predetermined symbolcharacter is already present in the address field.
 5. The method ofclaim 4 wherein the address field is an email address field and thepredetermined symbol character is an “@” symbol character.
 6. The methodof claim 5 wherein the set of non-text symbol characters includes symbolcharacters selected from the group consisting of the symbol characters“@”, “.”, “_” and “-”.
 7. The method of claim 6 wherein if thepredetermined symbol character is not already present in the addressfield, one input of the delimiter causes the “@” symbol character to beselected as the selected symbol character, and two repetitive inputs ofthe delimiter without any intervening inputs causes the “.” symbolcharacter to be selected as the selected symbol character.
 8. The methodof claim 4 wherein the address field is a WEB address field and thepredetermined symbol character is an “/” symbol character.
 9. The methodof claim 8 wherein the set of non-text symbol characters includes symbolcharacters selected from the group consisting of the symbol characters“.”, “_” and “-”.
 10. The method of claim 1 wherein the set of non-textsymbol characters includes a first sequence of symbol characters and asecond sequence of symbol characters, wherein the selected symbolcharacter is selected from the first sequence if a predeterminedcharacter string is not already present in the address field, and theselected symbol character is selected from the second sequence if thepredetermined character string is already present in the address field.11. The method of claim 1 wherein a plurality of different predeterminedsets of non-text symbol characters are stored on the communicationsdevice, the method comprising choosing a specific one of the sets independence on a type of the address field, wherein the selected non-textsymbol character is selected from the chosen set.
 12. A computer programproduct for inputting an electronic address into an address field on acommunications device, the electronic address including a plurality oftext characters and non-text symbol characters, the product comprising acomputer readable medium embodying instructions enabling a processor toperform the method of claim
 1. 13. A hand-held wireless communicationsdevice, comprising: a controller for controlling the operation of thedevice; a user input interface for inputting character information tothe controller; a display coupled to the controller; and an electronicstorage element coupled to the controller and having stored thereon asymbol character set comprising a sequence of non-text symbolcharacters, the controller inputting an address into an address fielddisplayed on the display of the device by: (i) receiving a plurality ofinputs for the address field through the user input interface; (ii)adding text characters to the address field corresponding to receivedinputs that are text character inputs; and (iii) detecting repetitivesuccessive inputs of a predetermined delimiter, selecting a non-textsymbol character from the symbol character set in dependence on a numberof times the delimiter has been repetitively input without anyintervening inputs, and adding the selected non-text symbol character tothe address field when an input other than the delimiter is received.14. The device of claim 13 wherein the delimiter is a space characterinput.
 15. The device of claim 13 wherein the symbol character setincludes a first sequence of symbol characters and second sequence ofsymbol characters, wherein the selected symbol character is selectedfrom the first sequence if a predetermined symbol character is notalready present in the address field, and the selected symbol characteris selected from the second sequence if the predetermined symbolcharacter is already present in the address field.
 16. The device ofclaim 15 wherein the address field is an email address field and thepredetermined symbol character is an “@” symbol character.
 17. Thedevice of claim 16 wherein the set of non-text symbol charactersincludes symbol characters selected from the group consisting of thesymbol characters “@”, “.”, “_”, and “-”.
 18. The device of claim 15wherein the address field is a WEB address field and the predeterminedsymbol character is an “/” symbol character.
 19. The device of claim 18wherein the set of non-text symbol characters includes symbol charactersselected from the group consisting of the symbol characters “.”, “_” and“-”.
 20. The device of claim 12 wherein a plurality of differentpredetermined symbol character sets of non-text symbol characters arestored on the storage element, the controller choosing a specific one ofthe symbol character sets in dependence on a type of the address field,wherein the selected non-text symbol character is selected from thechosen symbol character set.
 21. A method of inputting an electronicaddress into an address field on a communications device, the electronicaddress including a plurality of text characters and non-text symbolcharacters, comprising: receiving a plurality of inputs for the addressfield through a user input interface of the device; adding textcharacters to the address field corresponding to received inputs thatare text character inputs; and detecting among the inputs repetitivesuccessive inputs of a predetermined delimiter, selecting a non-textsymbol character from a set of non-text symbol characters in dependenceon a number of times the delimiter has been repetitively input withoutany intervening inputs, and adding the selected non-text symbolcharacter to the address field when an input other than the delimiter isreceived, wherein the set of non-text symbol characters includes a firstsequence of symbol characters and a second sequence of symbolcharacters, wherein the selected symbol character is selected from thefirst sequence if a predetermined character string is not alreadypresent in the address field, and the selected symbol character isselected from the second sequence if the predetermined character stringis already present in the address field.
 22. The method of claim 21wherein the selected non-text symbol character is selected both independence on the number of times the delimiter has been repetitivelyinput without any intervening inputs and whether a predetermined symbolcharacter is already present in the address field.